/*
Copyright (C) 2008 raohmaru <http://www.raohmaru.com>

This file is part of Raohmaru AS3 Framework.

Raohmaru AS3 Framework is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

Raohmaru AS3 Framework is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with Raohmaru AS3 Framework.  If not, see <http://www.gnu.org/licenses/>.
*/

package jp.raohmaru.events 
{

/**
 * La clase EventGroup contiene constantes enumeradas que representan grupos de constantes EventType, agrupadas por el operador binario |, permitiendo de esta
 * manera tener en una única variable diversos valores.
 * @example
<listing version="3.0">var flags : uint = EventGroup.MOUSE_EVENTS;<br>
if((flags & EventType.MOUSE_OVER) > 0) trace("flags contains a MOUSE_OVER");
if((flags & EventType.MOUSE_OUT) > 0) trace("flags contains a MOUSE_OUT");
if((flags & EventType.MOUSE_UP) > 0) trace("flags contains a MOUSE_UP");</listing>
 * @see EventType
 * @see EventRegister
 * @author raohmaru
 * @version 1.1
 */
public class EventGroup 
{
	/**
	 * Agrupa a los eventos EventType.MOUSE_OVER, EventType.MOUSE_OUT y EventType.MOUSE_UP.
	 */
	public static const MOUSE_EVENTS		: uint = EventType.MOUSE_OVER 	| EventType.MOUSE_OUT 	| EventType.MOUSE_UP;
	/**
	 * Agrupa a los eventos EventType.MOUSE_OVER y EventType.MOUSE_OUT.
	 */
	public static const MOUSEOVER_EVENTS	: uint = EventType.MOUSE_OVER 	| EventType.MOUSE_OUT;
	/**
	 * Agrupa a los eventos EventType.ROLL_OVER, EventType.ROLL_OUT y EventType.MOUSE_UP.
	 */
	public static const ROLL_EVENTS			: uint = EventType.ROLL_OVER	| EventType.ROLL_OUT	| EventType.MOUSE_UP;
	/**
	 * Agrupa a los eventos EventType.ROLL_OVER y EventType.ROLL_OUT.
	 */
	public static const ROLLOVER_EVENTS		: uint = EventType.ROLL_OVER	| EventType.ROLL_OUT;
	/**
	 * Agrupa a los eventos EventType.MOUSE_OVER, EventType.MOUSE_OUT, EventType.MOUSE_DOWN y EventType.MOUSE_UP.
	 */
	public static const BUTTON_EVENTS		: uint = EventType.MOUSE_OVER	| EventType.MOUSE_OUT 	| EventType.MOUSE_DOWN | EventType.MOUSE_UP;
	/**
	 * Agrupa a los eventos EventType.FOCUS_IN y EventType.FOCUS_OUT.
	 */
	public static const TEXT_EVENTS			: uint = EventType.FOCUS_IN		| EventType.FOCUS_OUT;
	/**
	 * Agrupa a los eventos EventType.MOUSE_DOWN y EventType.MOUSE_UP.
	 */
	public static const DRAG_EVENTS			: uint = EventType.MOUSE_DOWN 	| EventType.MOUSE_UP;
	/**
	 * Agrupa a los eventos EventType.KEY_DOWN y EventType.KEY_UP.
	 */
	public static const KEYBOARD_EVENTS		: uint = EventType.KEY_DOWN 	| EventType.KEY_UP;
}
}